home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 April: Mac OS SDK / Dev.CD Apr 99 SDK1.toast / Development Kits / Interfaces&Libraries / Universal / Interfaces / ComponentIncludes / Sound.k.h < prev   
Encoding:
C/C++ Source or Header  |  1998-08-17  |  8.8 KB  |  219 lines  |  [TEXT/MPS ]

  1. /*
  2.      File:        Sound.k.h
  3.  
  4.      Contains:    Sound Manager Interfaces.
  5.  
  6.      Version:    Technology:    Sound Manager 3.3
  7.                  Release:    Universal Interfaces 3.2
  8.  
  9.      Copyright:    © 1986-1998 by Apple Computer, Inc., all rights reserved
  10.  
  11.      Bugs?:        For bug reports, consult the following page on
  12.                  the World Wide Web:
  13.  
  14.                      http://developer.apple.com/bugreporter/
  15.  
  16. */
  17. #ifndef __SOUND_K__
  18. #define __SOUND_K__
  19.  
  20. #include <Sound.h>
  21.  
  22. #if OLDROUTINENAMES
  23. #endif
  24. #if TARGET_RT_LITTLE_ENDIAN
  25. #else
  26. #endif
  27. #if TARGET_CPU_68K
  28. #endif
  29. #if OLDROUTINENAMES
  30. #endif
  31. /*
  32.     Example usage:
  33.  
  34.         #define SOUNDCOMPONENT_BASENAME()    Fred
  35.         #define SOUNDCOMPONENT_GLOBALS()    FredGlobalsHandle
  36.         #include <Sound.k.h>
  37.  
  38.     To specify that your component implementation does not use globals, do not #define SOUNDCOMPONENT_GLOBALS
  39. */
  40. #ifdef SOUNDCOMPONENT_BASENAME
  41.     #ifndef SOUNDCOMPONENT_GLOBALS
  42.         #define SOUNDCOMPONENT_GLOBALS() 
  43.         #define ADD_SOUNDCOMPONENT_COMMA 
  44.     #else
  45.         #define ADD_SOUNDCOMPONENT_COMMA ,
  46.     #endif
  47.     #define SOUNDCOMPONENT_GLUE(a,b) a##b
  48.     #define SOUNDCOMPONENT_STRCAT(a,b) SOUNDCOMPONENT_GLUE(a,b)
  49.     #define ADD_SOUNDCOMPONENT_BASENAME(name) SOUNDCOMPONENT_STRCAT(SOUNDCOMPONENT_BASENAME(),name)
  50.  
  51.     EXTERN_API( ComponentResult  ) ADD_SOUNDCOMPONENT_BASENAME(InitOutputDevice) (SOUNDCOMPONENT_GLOBALS() ADD_SOUNDCOMPONENT_COMMA long  actions);
  52.  
  53.     EXTERN_API( ComponentResult  ) ADD_SOUNDCOMPONENT_BASENAME(SetSource) (SOUNDCOMPONENT_GLOBALS() ADD_SOUNDCOMPONENT_COMMA SoundSource  sourceID, ComponentInstance  source);
  54.  
  55.     EXTERN_API( ComponentResult  ) ADD_SOUNDCOMPONENT_BASENAME(GetSource) (SOUNDCOMPONENT_GLOBALS() ADD_SOUNDCOMPONENT_COMMA SoundSource  sourceID, ComponentInstance * source);
  56.  
  57.     EXTERN_API( ComponentResult  ) ADD_SOUNDCOMPONENT_BASENAME(GetSourceData) (SOUNDCOMPONENT_GLOBALS() ADD_SOUNDCOMPONENT_COMMA SoundComponentDataPtr * sourceData);
  58.  
  59.     EXTERN_API( ComponentResult  ) ADD_SOUNDCOMPONENT_BASENAME(SetOutput) (SOUNDCOMPONENT_GLOBALS() ADD_SOUNDCOMPONENT_COMMA SoundComponentDataPtr  requested, SoundComponentDataPtr * actual);
  60.  
  61.     EXTERN_API( ComponentResult  ) ADD_SOUNDCOMPONENT_BASENAME(AddSource) (SOUNDCOMPONENT_GLOBALS() ADD_SOUNDCOMPONENT_COMMA SoundSource * sourceID);
  62.  
  63.     EXTERN_API( ComponentResult  ) ADD_SOUNDCOMPONENT_BASENAME(RemoveSource) (SOUNDCOMPONENT_GLOBALS() ADD_SOUNDCOMPONENT_COMMA SoundSource  sourceID);
  64.  
  65.     EXTERN_API( ComponentResult  ) ADD_SOUNDCOMPONENT_BASENAME(GetInfo) (SOUNDCOMPONENT_GLOBALS() ADD_SOUNDCOMPONENT_COMMA SoundSource  sourceID, OSType  selector, void * infoPtr);
  66.  
  67.     EXTERN_API( ComponentResult  ) ADD_SOUNDCOMPONENT_BASENAME(SetInfo) (SOUNDCOMPONENT_GLOBALS() ADD_SOUNDCOMPONENT_COMMA SoundSource  sourceID, OSType  selector, void * infoPtr);
  68.  
  69.     EXTERN_API( ComponentResult  ) ADD_SOUNDCOMPONENT_BASENAME(StartSource) (SOUNDCOMPONENT_GLOBALS() ADD_SOUNDCOMPONENT_COMMA short  count, SoundSource * sources);
  70.  
  71.     EXTERN_API( ComponentResult  ) ADD_SOUNDCOMPONENT_BASENAME(StopSource) (SOUNDCOMPONENT_GLOBALS() ADD_SOUNDCOMPONENT_COMMA short  count, SoundSource * sources);
  72.  
  73.     EXTERN_API( ComponentResult  ) ADD_SOUNDCOMPONENT_BASENAME(PauseSource) (SOUNDCOMPONENT_GLOBALS() ADD_SOUNDCOMPONENT_COMMA short  count, SoundSource * sources);
  74.  
  75.     EXTERN_API( ComponentResult  ) ADD_SOUNDCOMPONENT_BASENAME(PlaySourceBuffer) (SOUNDCOMPONENT_GLOBALS() ADD_SOUNDCOMPONENT_COMMA SoundSource  sourceID, SoundParamBlockPtr  pb, long  actions);
  76.  
  77.  
  78.     /* MixedMode ProcInfo constants for component calls */
  79.     enum {
  80.         uppSoundComponentInitOutputDeviceProcInfo = 0x000003F0,
  81.         uppSoundComponentSetSourceProcInfo = 0x00000FF0,
  82.         uppSoundComponentGetSourceProcInfo = 0x00000FF0,
  83.         uppSoundComponentGetSourceDataProcInfo = 0x000003F0,
  84.         uppSoundComponentSetOutputProcInfo = 0x00000FF0,
  85.         uppSoundComponentAddSourceProcInfo = 0x000003F0,
  86.         uppSoundComponentRemoveSourceProcInfo = 0x000003F0,
  87.         uppSoundComponentGetInfoProcInfo = 0x00003FF0,
  88.         uppSoundComponentSetInfoProcInfo = 0x00003FF0,
  89.         uppSoundComponentStartSourceProcInfo = 0x00000EF0,
  90.         uppSoundComponentStopSourceProcInfo = 0x00000EF0,
  91.         uppSoundComponentPauseSourceProcInfo = 0x00000EF0,
  92.         uppSoundComponentPlaySourceBufferProcInfo = 0x00003FF0
  93.     };
  94.  
  95. #endif    /* SOUNDCOMPONENT_BASENAME */
  96.  
  97. /*
  98.     Example usage:
  99.  
  100.         #define AUDIO_BASENAME()    Fred
  101.         #define AUDIO_GLOBALS()    FredGlobalsHandle
  102.         #include <Sound.k.h>
  103.  
  104.     To specify that your component implementation does not use globals, do not #define AUDIO_GLOBALS
  105. */
  106. #ifdef AUDIO_BASENAME
  107.     #ifndef AUDIO_GLOBALS
  108.         #define AUDIO_GLOBALS() 
  109.         #define ADD_AUDIO_COMMA 
  110.     #else
  111.         #define ADD_AUDIO_COMMA ,
  112.     #endif
  113.     #define AUDIO_GLUE(a,b) a##b
  114.     #define AUDIO_STRCAT(a,b) AUDIO_GLUE(a,b)
  115.     #define ADD_AUDIO_BASENAME(name) AUDIO_STRCAT(AUDIO_BASENAME(),name)
  116.  
  117.     EXTERN_API( ComponentResult  ) ADD_AUDIO_BASENAME(GetVolume) (AUDIO_GLOBALS() ADD_AUDIO_COMMA short  whichChannel, ShortFixed * volume);
  118.  
  119.     EXTERN_API( ComponentResult  ) ADD_AUDIO_BASENAME(SetVolume) (AUDIO_GLOBALS() ADD_AUDIO_COMMA short  whichChannel, ShortFixed  volume);
  120.  
  121.     EXTERN_API( ComponentResult  ) ADD_AUDIO_BASENAME(GetMute) (AUDIO_GLOBALS() ADD_AUDIO_COMMA short  whichChannel, short * mute);
  122.  
  123.     EXTERN_API( ComponentResult  ) ADD_AUDIO_BASENAME(SetMute) (AUDIO_GLOBALS() ADD_AUDIO_COMMA short  whichChannel, short  mute);
  124.  
  125.     EXTERN_API( ComponentResult  ) ADD_AUDIO_BASENAME(SetToDefaults) (AUDIO_GLOBALS());
  126.  
  127.     EXTERN_API( ComponentResult  ) ADD_AUDIO_BASENAME(GetInfo) (AUDIO_GLOBALS() ADD_AUDIO_COMMA AudioInfoPtr  info);
  128.  
  129.     EXTERN_API( ComponentResult  ) ADD_AUDIO_BASENAME(GetBass) (AUDIO_GLOBALS() ADD_AUDIO_COMMA short  whichChannel, short * bass);
  130.  
  131.     EXTERN_API( ComponentResult  ) ADD_AUDIO_BASENAME(SetBass) (AUDIO_GLOBALS() ADD_AUDIO_COMMA short  whichChannel, short  bass);
  132.  
  133.     EXTERN_API( ComponentResult  ) ADD_AUDIO_BASENAME(GetTreble) (AUDIO_GLOBALS() ADD_AUDIO_COMMA short  whichChannel, short * Treble);
  134.  
  135.     EXTERN_API( ComponentResult  ) ADD_AUDIO_BASENAME(SetTreble) (AUDIO_GLOBALS() ADD_AUDIO_COMMA short  whichChannel, short  Treble);
  136.  
  137.     EXTERN_API( ComponentResult  ) ADD_AUDIO_BASENAME(GetOutputDevice) (AUDIO_GLOBALS() ADD_AUDIO_COMMA Component * outputDevice);
  138.  
  139.     EXTERN_API( ComponentResult  ) ADD_AUDIO_BASENAME(MuteOnEvent) (AUDIO_GLOBALS() ADD_AUDIO_COMMA short  muteOnEvent);
  140.  
  141.  
  142.     /* MixedMode ProcInfo constants for component calls */
  143.     enum {
  144.         uppAudioGetVolumeProcInfo = 0x00000EF0,
  145.         uppAudioSetVolumeProcInfo = 0x00000AF0,
  146.         uppAudioGetMuteProcInfo = 0x00000EF0,
  147.         uppAudioSetMuteProcInfo = 0x00000AF0,
  148.         uppAudioSetToDefaultsProcInfo = 0x000000F0,
  149.         uppAudioGetInfoProcInfo = 0x000003F0,
  150.         uppAudioGetBassProcInfo = 0x00000EF0,
  151.         uppAudioSetBassProcInfo = 0x00000AF0,
  152.         uppAudioGetTrebleProcInfo = 0x00000EF0,
  153.         uppAudioSetTrebleProcInfo = 0x00000AF0,
  154.         uppAudioGetOutputDeviceProcInfo = 0x000003F0,
  155.         uppAudioMuteOnEventProcInfo = 0x000002F0
  156.     };
  157.  
  158. #endif    /* AUDIO_BASENAME */
  159.  
  160. #if !TARGET_OS_MAC
  161. /*
  162.     Example usage:
  163.  
  164.         #define SNDINPUT_BASENAME()    Fred
  165.         #define SNDINPUT_GLOBALS()    FredGlobalsHandle
  166.         #include <Sound.k.h>
  167.  
  168.     To specify that your component implementation does not use globals, do not #define SNDINPUT_GLOBALS
  169. */
  170. #ifdef SNDINPUT_BASENAME
  171.     #ifndef SNDINPUT_GLOBALS
  172.         #define SNDINPUT_GLOBALS() 
  173.         #define ADD_SNDINPUT_COMMA 
  174.     #else
  175.         #define ADD_SNDINPUT_COMMA ,
  176.     #endif
  177.     #define SNDINPUT_GLUE(a,b) a##b
  178.     #define SNDINPUT_STRCAT(a,b) SNDINPUT_GLUE(a,b)
  179.     #define ADD_SNDINPUT_BASENAME(name) SNDINPUT_STRCAT(SNDINPUT_BASENAME(),name)
  180.  
  181.     EXTERN_API( ComponentResult  ) ADD_SNDINPUT_BASENAME(ReadAsync) (SNDINPUT_GLOBALS() ADD_SNDINPUT_COMMA SndInputCmpParamPtr  SICParmPtr);
  182.  
  183.     EXTERN_API( ComponentResult  ) ADD_SNDINPUT_BASENAME(ReadSync) (SNDINPUT_GLOBALS() ADD_SNDINPUT_COMMA SndInputCmpParamPtr  SICParmPtr);
  184.  
  185.     EXTERN_API( ComponentResult  ) ADD_SNDINPUT_BASENAME(PauseRecording) (SNDINPUT_GLOBALS());
  186.  
  187.     EXTERN_API( ComponentResult  ) ADD_SNDINPUT_BASENAME(ResumeRecording) (SNDINPUT_GLOBALS());
  188.  
  189.     EXTERN_API( ComponentResult  ) ADD_SNDINPUT_BASENAME(StopRecording) (SNDINPUT_GLOBALS());
  190.  
  191.     EXTERN_API( ComponentResult  ) ADD_SNDINPUT_BASENAME(GetStatus) (SNDINPUT_GLOBALS() ADD_SNDINPUT_COMMA short * recordingStatus, unsigned long * totalSamplesToRecord, unsigned long * numberOfSamplesRecorded);
  192.  
  193.     EXTERN_API( ComponentResult  ) ADD_SNDINPUT_BASENAME(GetDeviceInfo) (SNDINPUT_GLOBALS() ADD_SNDINPUT_COMMA OSType  infoType, void * infoData);
  194.  
  195.     EXTERN_API( ComponentResult  ) ADD_SNDINPUT_BASENAME(SetDeviceInfo) (SNDINPUT_GLOBALS() ADD_SNDINPUT_COMMA OSType  infoType, void * infoData);
  196.  
  197.     EXTERN_API( ComponentResult  ) ADD_SNDINPUT_BASENAME(InitHardware) (SNDINPUT_GLOBALS());
  198.  
  199.  
  200.     /* MixedMode ProcInfo constants for component calls */
  201.     enum {
  202.         uppSndInputReadAsyncProcInfo = 0x000003F0,
  203.         uppSndInputReadSyncProcInfo = 0x000003F0,
  204.         uppSndInputPauseRecordingProcInfo = 0x000000F0,
  205.         uppSndInputResumeRecordingProcInfo = 0x000000F0,
  206.         uppSndInputStopRecordingProcInfo = 0x000000F0,
  207.         uppSndInputGetStatusProcInfo = 0x00003FF0,
  208.         uppSndInputGetDeviceInfoProcInfo = 0x00000FF0,
  209.         uppSndInputSetDeviceInfoProcInfo = 0x00000FF0,
  210.         uppSndInputInitHardwareProcInfo = 0x000000F0
  211.     };
  212.  
  213. #endif    /* SNDINPUT_BASENAME */
  214.  
  215. #endif
  216.  
  217. #endif /* __SOUND_K__ */
  218.  
  219.